css: add background-blend-mode support
authorGeorges Basile Stavracas Neto <georges.stavracas@gmail.com>
Fri, 1 Jul 2016 12:54:23 +0000 (09:54 -0300)
committerMatthias Clasen <mclasen@redhat.com>
Sun, 3 Jul 2016 21:24:47 +0000 (17:24 -0400)
commit369db4a40650bbbcd6125b9b97f486925d93541e
tree2030f4424121e6ac886800c0b32fcebc0aae55fb
parentc8a74a1f5021fe47c9eaf199390a43a16e9809dd
css: add background-blend-mode support

CSS supports blend modes, in which a series of layers are
merged together according to the given operation or set of
operations.

Support for blend modes landed on Cairo, which exposes all
the commons and also the exquisites blend modes available.
Adding support for blend modes, then, is just a matter of
using the available Cairo operations.

This patch adds the background-blend-mode CSS enum property,
and adapts the background rendering code to blend the backgrounds
using the available blend modes when they're set.

https://bugzilla.gnome.org/show_bug.cgi?id=768305
gtk/gtkcssenumvalue.c
gtk/gtkcssenumvalueprivate.h
gtk/gtkcssstylepropertyimpl.c
gtk/gtkcsstypes.c
gtk/gtkcsstypesprivate.h
gtk/gtkrenderbackground.c